package com.zjcloud.jwgl.domain;

import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zjcloud.common.annotation.Excel;
import com.zjcloud.common.core.domain.BaseEntity;

/**
 * 教室信息对象 sc_classroom
 * 
 * @author zjcloud
 * @date 2024-12-19
 */
public class ScClassroom extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 教室ID */
    private Long id;

    /** 教室编码 */
    @Excel(name = "教室编码")
    private String classroomCode;

    /** 教室名称 */
    @Excel(name = "教室名称")
    private String classroomName;

    /** 教室类型(ORDINARY普通教室 LABORATORY实验室 COMPUTER计算机室 MUSIC音乐室 ART美术室 SPORTS体育馆 LIBRARY图书馆 AUDITORIUM礼堂) */
    @Excel(name = "教室类型", readConverterExp = "ORDINARY=普通教室,LABORATORY=实验室,COMPUTER=计算机室,MUSIC=音乐室,ART=美术室,SPORTS=体育馆,LIBRARY=图书馆,AUDITORIUM=礼堂")
    private String classroomType;

    /** 建筑物 */
    @Excel(name = "建筑物")
    private String building;

    /** 楼层 */
    @Excel(name = "楼层")
    private Integer floor;

    /** 房间号 */
    @Excel(name = "房间号")
    private String roomNumber;

    /** 容量 */
    @Excel(name = "容量")
    private Integer capacity;

    /** 最大容量 */
    @Excel(name = "最大容量")
    private Integer maxCapacity;

    /** 面积(平方米) */
    @Excel(name = "面积")
    private BigDecimal area;

    /** 设备清单 */
    @Excel(name = "设备清单")
    private String equipment;

    /** 特殊设备 */
    @Excel(name = "特殊设备")
    private String specialEquipment;

    /** 多媒体设备(1有 0无) */
    @Excel(name = "多媒体设备", readConverterExp = "1=有,0=无")
    private String hasMultimedia;

    /** 空调设备(1有 0无) */
    @Excel(name = "空调设备", readConverterExp = "1=有,0=无")
    private String hasAirConditioner;

    /** 网络接入(1有 0无) */
    @Excel(name = "网络接入", readConverterExp = "1=有,0=无")
    private String hasNetwork;

    /** 无障碍设施(1有 0无) */
    @Excel(name = "无障碍设施", readConverterExp = "1=有,0=无")
    private String hasAccessibility;

    /** 安全等级(LOW低 MEDIUM中 HIGH高) */
    @Excel(name = "安全等级", readConverterExp = "LOW=低,MEDIUM=中,HIGH=高")
    private String securityLevel;

    /** 环境质量评分(1-10) */
    @Excel(name = "环境质量评分")
    private Integer environmentScore;

    /** 采光条件(EXCELLENT优秀 GOOD良好 FAIR一般 POOR较差) */
    @Excel(name = "采光条件", readConverterExp = "EXCELLENT=优秀,GOOD=良好,FAIR=一般,POOR=较差")
    private String lighting;

    /** 通风条件(EXCELLENT优秀 GOOD良好 FAIR一般 POOR较差) */
    @Excel(name = "通风条件", readConverterExp = "EXCELLENT=优秀,GOOD=良好,FAIR=一般,POOR=较差")
    private String ventilation;

    /** 噪音等级(LOW低 MEDIUM中 HIGH高) */
    @Excel(name = "噪音等级", readConverterExp = "LOW=低,MEDIUM=中,HIGH=高")
    private String noiseLevel;

    /** 使用优先级(1-10) */
    @Excel(name = "使用优先级")
    private Integer usagePriority;

    /** 维护状态(GOOD良好 FAIR一般 POOR较差 MAINTENANCE维修中) */
    @Excel(name = "维护状态", readConverterExp = "GOOD=良好,FAIR=一般,POOR=较差,MAINTENANCE=维修中")
    private String maintenanceStatus;

    /** 最后维护日期 */
    @Excel(name = "最后维护日期", width = 30, dateFormat = "yyyy-MM-dd")
    private String lastMaintenanceDate;

    /** 负责人 */
    @Excel(name = "负责人")
    private String manager;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String contactPhone;

    /** 使用说明 */
    @Excel(name = "使用说明")
    private String usageInstructions;

    /** 预约规则 */
    @Excel(name = "预约规则")
    private String bookingRules;

    /** 状态(1可用 0不可用) */
    @Excel(name = "状态", readConverterExp = "1=可用,0=不可用")
    private String status;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setClassroomCode(String classroomCode) 
    {
        this.classroomCode = classroomCode;
    }

    public String getClassroomCode() 
    {
        return classroomCode;
    }
    public void setClassroomName(String classroomName) 
    {
        this.classroomName = classroomName;
    }

    public String getClassroomName() 
    {
        return classroomName;
    }
    public void setClassroomType(String classroomType) 
    {
        this.classroomType = classroomType;
    }

    public String getClassroomType() 
    {
        return classroomType;
    }
    public void setBuilding(String building) 
    {
        this.building = building;
    }

    public String getBuilding() 
    {
        return building;
    }
    public void setFloor(Integer floor) 
    {
        this.floor = floor;
    }

    public Integer getFloor() 
    {
        return floor;
    }
    public void setRoomNumber(String roomNumber) 
    {
        this.roomNumber = roomNumber;
    }

    public String getRoomNumber() 
    {
        return roomNumber;
    }
    public void setCapacity(Integer capacity) 
    {
        this.capacity = capacity;
    }

    public Integer getCapacity() 
    {
        return capacity;
    }
    public void setMaxCapacity(Integer maxCapacity) 
    {
        this.maxCapacity = maxCapacity;
    }

    public Integer getMaxCapacity() 
    {
        return maxCapacity;
    }
    public void setArea(BigDecimal area) 
    {
        this.area = area;
    }

    public BigDecimal getArea() 
    {
        return area;
    }
    public void setEquipment(String equipment) 
    {
        this.equipment = equipment;
    }

    public String getEquipment() 
    {
        return equipment;
    }
    public void setSpecialEquipment(String specialEquipment) 
    {
        this.specialEquipment = specialEquipment;
    }

    public String getSpecialEquipment() 
    {
        return specialEquipment;
    }
    public void setHasMultimedia(String hasMultimedia) 
    {
        this.hasMultimedia = hasMultimedia;
    }

    public String getHasMultimedia() 
    {
        return hasMultimedia;
    }
    public void setHasAirConditioner(String hasAirConditioner) 
    {
        this.hasAirConditioner = hasAirConditioner;
    }

    public String getHasAirConditioner() 
    {
        return hasAirConditioner;
    }
    public void setHasNetwork(String hasNetwork) 
    {
        this.hasNetwork = hasNetwork;
    }

    public String getHasNetwork() 
    {
        return hasNetwork;
    }
    public void setHasAccessibility(String hasAccessibility) 
    {
        this.hasAccessibility = hasAccessibility;
    }

    public String getHasAccessibility() 
    {
        return hasAccessibility;
    }
    public void setSecurityLevel(String securityLevel) 
    {
        this.securityLevel = securityLevel;
    }

    public String getSecurityLevel() 
    {
        return securityLevel;
    }
    public void setEnvironmentScore(Integer environmentScore) 
    {
        this.environmentScore = environmentScore;
    }

    public Integer getEnvironmentScore() 
    {
        return environmentScore;
    }
    public void setLighting(String lighting) 
    {
        this.lighting = lighting;
    }

    public String getLighting() 
    {
        return lighting;
    }
    public void setVentilation(String ventilation) 
    {
        this.ventilation = ventilation;
    }

    public String getVentilation() 
    {
        return ventilation;
    }
    public void setNoiseLevel(String noiseLevel) 
    {
        this.noiseLevel = noiseLevel;
    }

    public String getNoiseLevel() 
    {
        return noiseLevel;
    }
    public void setUsagePriority(Integer usagePriority) 
    {
        this.usagePriority = usagePriority;
    }

    public Integer getUsagePriority() 
    {
        return usagePriority;
    }
    public void setMaintenanceStatus(String maintenanceStatus) 
    {
        this.maintenanceStatus = maintenanceStatus;
    }

    public String getMaintenanceStatus() 
    {
        return maintenanceStatus;
    }
    public void setLastMaintenanceDate(String lastMaintenanceDate) 
    {
        this.lastMaintenanceDate = lastMaintenanceDate;
    }

    public String getLastMaintenanceDate() 
    {
        return lastMaintenanceDate;
    }
    public void setManager(String manager) 
    {
        this.manager = manager;
    }

    public String getManager() 
    {
        return manager;
    }
    public void setContactPhone(String contactPhone) 
    {
        this.contactPhone = contactPhone;
    }

    public String getContactPhone() 
    {
        return contactPhone;
    }
    public void setUsageInstructions(String usageInstructions) 
    {
        this.usageInstructions = usageInstructions;
    }

    public String getUsageInstructions() 
    {
        return usageInstructions;
    }
    public void setBookingRules(String bookingRules) 
    {
        this.bookingRules = bookingRules;
    }

    public String getBookingRules() 
    {
        return bookingRules;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("classroomCode", getClassroomCode())
            .append("classroomName", getClassroomName())
            .append("classroomType", getClassroomType())
            .append("building", getBuilding())
            .append("floor", getFloor())
            .append("roomNumber", getRoomNumber())
            .append("capacity", getCapacity())
            .append("maxCapacity", getMaxCapacity())
            .append("area", getArea())
            .append("equipment", getEquipment())
            .append("specialEquipment", getSpecialEquipment())
            .append("hasMultimedia", getHasMultimedia())
            .append("hasAirConditioner", getHasAirConditioner())
            .append("hasNetwork", getHasNetwork())
            .append("hasAccessibility", getHasAccessibility())
            .append("securityLevel", getSecurityLevel())
            .append("environmentScore", getEnvironmentScore())
            .append("lighting", getLighting())
            .append("ventilation", getVentilation())
            .append("noiseLevel", getNoiseLevel())
            .append("usagePriority", getUsagePriority())
            .append("maintenanceStatus", getMaintenanceStatus())
            .append("lastMaintenanceDate", getLastMaintenanceDate())
            .append("manager", getManager())
            .append("contactPhone", getContactPhone())
            .append("usageInstructions", getUsageInstructions())
            .append("bookingRules", getBookingRules())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}